# CORS(Cross-Origin Resource Sharing)

Assembled by GimunLee

# CORSλž€?

λ‹€λ₯Έ λ„λ©”μΈμœΌλ‘œλΆ€ν„° λ¦¬μ†ŒμŠ€κ°€ ν•„μš”ν•œ 경우 Cross-Site Http Requestκ°€ ν•„μš”ν•©λ‹ˆλ‹€. κΈ°μ‘΄μ—λŠ” XMLHttpRequestλŠ” λ³΄μ•ˆμƒμ˜ 이유둜 동일 좜처 μ •μ±…(same-origin policy)으둜 μžμ‹ κ³Ό λ™μΌν•œ λ„λ©”μΈμœΌλ‘œλ§Œ HTTP μš”μ²­μ„ 보내도둝 μ œν•œν•˜μ˜€μŠ΅λ‹ˆλ‹€. 즉, Cross-Origin Http μš”μ²­μ„ μ œν•œν•˜μ˜€μŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ, μ§€μ†μ μœΌλ‘œ μ›Ή μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œμ„ ν•˜κ³  μ‰½κ²Œ κ°œλ°œν•˜κΈ° μœ„ν•΄μ„œλŠ” μ΄λŸ¬ν•œ Requestκ°€ κΌ­ ν•„μš”ν–ˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ XMLHttpRequestκ°€ Cross-Domain을 μš”μ²­ν•  수 μžˆλŠ” 방법이 ν•„μš”ν•˜κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ μš”μ²­μ„ λ°”νƒ•μœΌλ‘œ CORSκ°€ νƒ„μƒν•˜μ˜€μŠ΅λ‹ˆλ‹€.

CORSλŠ” Cross-Origin Resource Sharing의 μ•½μžλ‘œ 도메인 λ˜λŠ” ν¬νŠΈκ°€ λ‹€λ₯Έ μ„œλ²„μ˜ μžμ›μ„ μš”μ²­ν•˜λŠ” λ§€μ»€λ‹ˆμ¦˜μ„ λ§ν•©λ‹ˆλ‹€. CORS μ’…λ₯˜μ—λŠ” μ•„λž˜μ™€ 같이 크게 4κ°€μ§€λ‘œ λ‚˜λˆ„μ–΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

  • Simple Request

  • Preflight Request

  • Credential Request

  • Non-Credential Request

β€» 동일 좜처 μ •μ±…(same-origin policy): 뢈러온 λ¬Έμ„œλ‚˜ μŠ€ν¬λ¦½νŠΈκ°€ λ‹€λ₯Έ μΆœμ²˜μ—μ„œ κ°€μ Έμ˜¨ λ¦¬μ†ŒμŠ€μ™€ μƒν˜Έ μž‘μš©ν•˜λŠ” 것을 μ œν•œν•˜λŠ” μ€‘μš”ν•œ λ³΄μ•ˆ λ°©μ‹μž…λ‹ˆλ‹€. 이것은 잠재적 μ•…μ„± λ¬Έμ„œλ₯Ό κ²©λ¦¬ν•˜μ—¬, 곡격 경둜λ₯Ό μ€„μ΄λŠ”λ° 도움이 λ©λ‹ˆλ‹€. (좜처 - MDN web docs)


# References

Last Updated: 8/12/2020, 1:33:42 PM